package org.geektimes.injection.context.Initializer;


import org.geektimes.injection.context.ComponentContext;

/**
 * @FileName: ComponentInitializer
 * @Description: 组件初始化接口
 * @Author: MaWenHao
 * @Created: 2021/3/9 - 下午10:01
 */
public interface ComponentInitializer {

    /**
     * 判断传入的Class对象是否可以被该初始化器初始化
     * @param aClass
     * @return
     */
    boolean match(Class<?> aClass);

    /**
     * 初始化
     * @param aClass
     */
    void init(Class<?> aClass, ComponentContext componentContext) throws Exception;
}
